1. Field of the Invention
This invention relates to mobile communications and, more specifically, to a method of determining the availability of a wireless device in a CDMA network.
2. Background and Related Art
Global System for Mobile Communication (GSM) is one standard for wireless mobile communications. Code Division Multiple Access (CDMA) represents another wireless mobile communications technology. Short Message Service (SMS) is a mobile data service supported by both GSM and CDMA communications networks. SMS allows text messaging to and from devices, including wireless devices. These messages are limited in size and can be received simultaneously during a voice or data call because SMS uses a signaling path that is separate from a voice path.
SMS is a store-and-forward service that guarantees delivery of a message by the network and provides delivery confirmation. Messages are sent to a Short Message Service Center (SMSC) by a device, and the SMSC interacts with the communications network to deliver the message to the intended recipient. The message from the sending device is stored in the SMSC, which then forwards it to the destination device. If delivery of the message fails, delivery of the stored message can be retried later. SMS provides delivery confirmation by way of return receipts. Thus, if desired, the sender can receive a message confirming that the sent message was delivered to the intended recipient.
Once a message is received by the SMSC, the SMSC must deliver it to the intended recipient. In order to deliver the message to the appropriate recipient, the SMSC interrogates a Home Location Register (HLR) (and possibly a Visitor Location Register (VLR), if the device is roaming) of the destination device. In response to this Home Location Register Interrogation (HLRI), the destination device's HLR provides the necessary routing information to get the message to the intended recipient. The HLR is a main database of the communications network. The HLR is used for the permanent storage and management of subscriptions and service profiles.
The determination of when a wireless device in the communications network becomes available, i.e., for receiving calls and short messages, is useful information. Availability of the wireless device can basically be viewed as synonymous with the device being turned on and in coverage. Thus, device availability includes, for example, activation of the device in the communications network, the device becoming reachable after visiting an area not covered by the communications network, selection of a new communications network to provide service upon visiting a new area, etc.
Activation of a device entails that when the device first comes into radio communication with a mobile communications network, for example when the device is powered on in the network or moves into a cell of the network from another cell, the device engages in registration negotiation with the mobile communications network. If negotiation registration is successful, an HLR associated with the device is updated to reflect the availability of the device.
For example, information on the availability of a device is useful to an application that has to send updated SMS information to an end user of the device, as well as for the optimization of network resources. One way that availability information can be used to optimize network resources is it allows placement of a call or delivery of a message to be predicated on the availability of the intended recipient of the call or message, as opposed to simply trying over and over again to place a call or send a message until you eventually succeed in completing the call or having the message delivered.
The GSM standard provides a mechanism for being alerted when a wireless device in the communications network becomes available. In the GSM environment, an SMS Class 0 short message (SMS0) can be used to obtain an alert when a user's device becomes available. An SMS0 is often referred to as a “flash” short message, a “blinking” short message, or an “alert” short message. An SMS0 is generally not stored in the memory of the user's device.
For example, as shown in FIG. 1 for a GSM environment, an application 110 sends an SMS0 to the SMSC 120, as shown by flow 140, in order to get an alert when the handset 130 becomes available. Since the handset 130 is currently unavailable, the SMSC 120 fails to deliver the SMS0, as shown by dashed flow 150, and waits for the handset 130 to become available so that delivery of the SMS0 can be completed.
As further shown in FIG. 2 for the GSM environment of FIG. 1 (wherein similar elements retain the same reference numbers), when the handset 130 finally becomes available, the SMS0 is successfully delivered by the SMSC 120 to the handset 130, as shown by flow 250. The SMS0 represents an empty message, the receipt of which does not interfere with a user of the handset 130. For example, although receipt of an SMS0 is acknowledged, it does not require any user interaction to retrieve the message. Furthermore, the SMS0 may be automatically discarded upon receipt.
An acknowledgement is returned to the SMSC 120, as shown by flow 260, indicating that the SMS0 was successfully delivered, and thus the handset 130 is available. An alert is subsequently sent from the SMSC 120 to the application 110, as shown by flow 270. Upon receipt of this alert, the application 110 can send a real (i.e., non-empty) message with updated/current content to the handset 130 via the SMSC 120, as shown by flows 280 and 290.
Other components of the communications network, for example a Mobile Switching Center (MSC), have been omitted in order to simplify the above discussion.
Thus, the GSM standard provides a mechanism wherein an application can be alerted when a wireless device in the communications network becomes available. However, there is no equivalent functionality for SMS0 available in a CDMA environment.
One approach to providing an alert when a user becomes available in a CDMA environment involves sending an empty SMS message to the user's handset. However, this approach causes the user to receive an SMS message with no data in it, and thus requires interfering with the user.
Another approach involves simply sending the data in an SMS message to the handset without first confirming that the user is available. However, this approach can result in the user receiving a message with data that is not updated. Thus, if the user's device is not available when the SMS message is sent, by the time the user's device becomes available and the stored SMS message is forwarded to the user's device, the data in the SMS message might be obsolete or incorrect.